package com.qzsoft.zhjd.machine.zhgcloud.model;


import java.math.BigDecimal;
import java.util.Date;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;

/**
 * @ClassName ZhgRealtimeDataModel
 * @Description 机械指挥官实时数据
 * @author linhuawei
 * @since 2021-10-12
 */
@Data
@EqualsAndHashCode(callSuper = false)
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ToString
public class ZhgRealtimeDataModel {
    
    /**
     * 机械实时状态
     */
    private String state;
    
    /**
     * 终端状态
     */
    private String device_state;
    
    /**
     * 当前持续时间
     */
    private Integer standing_time;
    
    /**
     * 机械状态上传时间
     */
    private Long state_update_at;
    
    /**
     * 地址
     */
    private String address;
    
    /**
     * 经度
     */
    private BigDecimal longitude;
    
    /**
     * 维度
     */
    private BigDecimal latitude;
    
    /**
     * 最后定位时间
     */
    private Long last_location_at;
    
    /**
     * 硬件数据
     */
    private ZhgRealtimeHardwareModel device;
    
    /**
     * 时间戳
     */
    private Long timestamp;
    
    public Date getStateUpdateAt() {
        if(null != state_update_at) {
            return new Date(state_update_at * 1000L);
        }
        return null;
    }
    
    public Date getLastLocationAt() {
        if(null != last_location_at) {
            return new Date(last_location_at * 1000L);
        }
        return null;
    }

}
